In probe-based data storage devices, stored data is represented on a storage surface by the presence and absence of indentations, or ‘pits’, which are formed in the surface by a probe of the device. One example of such a device, based on the AFM (Atomic Force Microscope), is detailed in IBM Journal of Research & Development, Volume 44, No. 3, May 2000, pp323-340, “The ‘Millipede’—More Than One Thousand Tips for Future AFM Data Storage”, Vettiger et al., and the references cited therein. In this device, the probe is a nanometer-sharp tip mounted on the end of a microfabricated cantilever. The tip can be moved over the surface of a storage medium in the form of a polymer substrate. A mechanism is provided for heating the tip, allowing the tip to penetrate the polymer surface to create a pit. Such a pit typically represents a bit of value ‘1’, a bit of value ‘0’ being represented by the absence of a pit at a bit position on the storage surface. In a read-scan mode, the thermomechanical probe mechanism can be used to read back data by detecting the deflection of the cantilever as the tip is moved over the pattern of pits in the storage surface.
As in the device of the above reference, probe-based storage devices may employ an integrated array of individually-addressable probes in order to increase data rates. Each probe of the array can read and write data within its own storage field as the array is moved relative to the storage surface. This is illustrated schematically in FIG. 1 of the accompanying drawings. Here, a storage surface 1 provides a regular array of storage fields arranged in M rows of N storage fields. Each storage field is labeled in the figure by (row number, column number). As indicated schematically by probes P in the figure, a corresponding array of M rows of N probes is provided such that each probe can read and write data in a respective storage field. In particular, as the probe array is moved relative to the storage surface, each probe P can be moved through a series of p rows of q bit-positions as represented schematically in the enlarged section of the figure. In each storage field, data can be written by writing bits at successive bit-positions along a row, and can similarly be read back as the probe is advanced through the appropriate series of bit positions.
A parallel addressing scheme can be used for the probe array, whereby multiple probes can be addressed simultaneously for the read/write operation at a given array position. In the above reference for example, the parallel addressing scheme operates via a grid of row and column address lines, such that probes in the same row are connected to the same row-address line, and probes in the same column are connected to the same column-address line. Probes in a given row are activated simultaneously for the read or write operation at a given bit position, successive rows being activated in turn until the entire array has been addressed. The probe array is then moved to the next bit position, and the operation is repeated. In a given write process, the bit sequences actually written to the storage surface may be derived from the input user data by various processing stages. For example, a type of RLL (Run-Length Limited) (d,k)-constraint code may be applied in order to increase areal density on the storage surface. At present, the use of probe arrays promises storage densities of 1 Tb/inch2 or even higher within a very small form factor and low power consumption, offering a new generation of ultrahigh density storage devices.
Various types of errors can be encountered in probe-based storage devices. These errors are typically related to surface damage such as scratches in the storage surface, to noise or to abnormal conditions during the read/write process, e.g. vibrations due to external shocks. In general in storage devices, such errors are typically handled using special types of error correcting codes (ECC) and proper data interleaving. While such mechanisms can be applied in conventional manner in probe-based storage devices, the operation of probe-based arrays as described above is somewhat different to the conventional devices in which these mechanisms are customarily used.
Another important consideration in probe-based storage relates to interface operation. Probe-based storage devices may use various interfaces for exchanging information with other processing devices, such as host processors, terminal processing units etc., in a data processing system. These interfaces may have various speeds, data bus widths and data formats. Different formats impose different sizes of user data blocks to be exchanged with the storage device. For example, one of the most common interfaces is the Compact Flash interface which uses one or more blocks of data, called ‘sectors’, each having a size of 512 (8-bit) bytes. Another well known interface is the Multimedia Card interface which does not require a specific sector size but allows an application to use a block of data which depends on the characteristics of the application, such as audio or video storage, multimedia streams, etc. The ability to accommodate such different interfaces would be highly desirable in probe-based storage devices.